#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
#include <string.h>

typedef int   myType1;
typedef char  myType2;
typedef struct
{
	int a;
	char b;
}po;

//void swap(int *a, int *b);
struct point CreatePoint(int x, int y);

struct point
{
	int x;
	int y;
};

int main()
{
	//char str[] = "HelloWorld";
	//char str[11];
	//str = "HelloWorld";
	//strcpy(str, "HelloWorld");

	//int a = 5;
	//printf("%zu\n", sizeof(a));
	//printf("%zu\n", sizeof(int));
	//printf("%zu\n", sizeof(3.14));

	//int m = 5;
	//int n = 10;
	//swap(&m, &n);
	//printf("m=%d n=%d\n", m, n);
	//return 0;

	//int a[5] = { 1,2,3,4,5 };
	//int* p;
	//p = a;
	//for (int i = 0; i < sizeof(a) / sizeof(a[0]); i++)
	//{
	//	printf("%d ", a[i]);
	//}
	//printf("\n");
	//for (int i = 0; i < sizeof(a) / sizeof(a[0]); i++)
	//{
	//	printf("%d ", *(p + i));
	//}
	//printf("%p\n", a);
	//printf("%p\n", p);
	//printf("%d\n", *p);

	//struct point p;
	//p.x = 1;
	//p.y = 2;
	////p = CreatePoint(1, 2);
	//printf("%d %d\n", p.x, p.y);
	//struct point* pp;
	//pp = &p;
	//pp->x = 3;
	//pp->y = 4;
	//printf("%d %d\n", pp->x, pp->y);

	//myType1 a = 1;
	//myType2 b = 'A';
	//printf("%d %c\n", a, b);
	//po p;
	//p.a = 1;
	//p.b = 'A';
	//printf("%d %c\n", p.a, p.b);

	return 0;
}

//void swap(int a, int b)
//{
//	int temp;
//	temp = a;
//	a = b;
//	b = temp;
//	printf("a=%d b=%d\n", a, b);
//}
//void swap(int *a, int *b)
//{
//	int temp;
//	temp = *a;
//	*a = *b;
//	*b = temp;
//	printf("a=%d b=%d\n", *a, *b);
//}

struct point CreatePoint(int x, int y)
{
	struct point temp;
	temp.x = x;
	temp.y = y;
	return temp;
}